R প্রোগ্রামিং: Indexing এবং Subsetting Vectors, Lists, এবং Matrices
R প্রোগ্রামিং ভাষায় ডেটা কাঠামোগুলির (data structures) মধ্যে vectors, lists, এবং matrices খুবই গুরুত্বপূর্ণ। এগুলোর মধ্যে indexing এবং subsetting করে আপনি নির্দিষ্ট মান বা উপাদান বের করতে পারেন, যা ডেটা সায়েন্স, পরিসংখ্যান, এবং মেশিন লার্নিংয়ের জন্য অত্যন্ত প্রয়োজনীয়।
নিচে আমরা indexing এবং subsetting এর প্রক্রিয়া এবং উদাহরণ দেখবো।
১. Indexing এবং Subsetting Vectors
Vectors হলো R এর একটি মৌলিক ডেটা কাঠামো যা এক ধরনের উপাদান ধারণ করে। Vectors কে একক ডেটা টাইপের (যেমন সংখ্যামূলক, ক্যারেক্টর ইত্যাদি) উপাদানগুলির অ্যারে হিসেবে ভাবা যেতে পারে।
Vectors এর Indexing:
- R এ vector এর প্রথম উপাদানটি ১ থেকে শুরু হয়, অর্থাৎ R ১ ভিত্তিক ইনডেক্সিং ব্যবহার করে।
উদাহরণ:
# একটি নম্বরের ভেক্টর তৈরি
v <- c(10, 20, 30, 40, 50)
# প্রথম উপাদান অ্যাক্সেস করা
v[1] # আউটপুট হবে 10
# তৃতীয় উপাদান অ্যাক্সেস করা
v[3] # আউটপুট হবে 30Vectors এর Subsetting:
- আপনি এক বা একাধিক উপাদান বের করতে পারেন, কিংবা কিছু উপাদান বাদ দিয়েও বের করতে পারেন।
# একাধিক উপাদান সিলেক্ট করা
v[c(1, 3)] # আউটপুট হবে 10 এবং 30
# ২ থেকে ৪ পর্যন্ত উপাদান বের করা
v[2:4] # আউটপুট হবে 20 30 40
# বাদ দেওয়া উপাদান নির্বাচন করা
v[-2] # আউটপুট হবে 10 30 40 50 (দ্বিতীয় উপাদান বাদ দেওয়া হয়েছে)২. Indexing এবং Subsetting Lists
Lists হলো একটি আরও জটিল ডেটা কাঠামো, যেখানে বিভিন্ন ধরনের ডেটা টাইপ (যেমন, সংখ্যা, স্ট্রিং, ভেক্টর, ডেটাফ্রেম ইত্যাদি) একসাথে রাখা যেতে পারে। এটি ডেটা সংগঠিত করার জন্য খুবই কার্যকরী।
Lists এর Indexing:
- Lists এ আপনি
[[ ]]ব্যবহার করে কোনো উপাদান বা এলিমেন্ট বের করতে পারেন, আর$ব্যবহার করে নির্দিষ্ট নামের উপাদান বের করা যায়।
উদাহরণ:
# একটি list তৈরি
my_list <- list(name = "John", age = 30, scores = c(90, 80, 70))
# list এর প্রথম উপাদান অ্যাক্সেস করা
my_list[[1]] # আউটপুট হবে "John"
# নামের মাধ্যমে উপাদান অ্যাক্সেস করা
my_list$name # আউটপুট হবে "John"
# list এর তৃতীয় উপাদান অ্যাক্সেস করা
my_list[[3]] # আউটপুট হবে 90 80 70Lists এর Subsetting:
- আপনি একাধিক উপাদান সিলেক্ট করতে পারেন।
# একাধিক উপাদান সিলেক্ট করা
my_list[c(1, 2)] # আউটপুট হবে একটি নতুন list যার মধ্যে name এবং age থাকবে৩. Indexing এবং Subsetting Matrices
Matrices হলো একটি দুই-মাত্রিক ডেটা কাঠামো, যেখানে rows এবং columns থাকে। মেট্রিক্সে ডেটার একাধিক উপাদান থাকে, এবং আপনি রো এবং কলামের মাধ্যমে তাদের অ্যাক্সেস করতে পারেন।
Matrices এর Indexing:
- আপনি
[]ব্যবহার করে matrix এর নির্দিষ্ট উপাদান বের করতে পারেন। এখানে প্রথম ইনডেক্সটি রো এবং দ্বিতীয় ইনডেক্সটি কলাম প্রতিনিধিত্ব করে।
উদাহরণ:
# একটি ৩x৩ মেট্রিক্স তৈরি
m <- matrix(1:9, nrow = 3, ncol = 3)
# মেট্রিক্সের প্রথম রো এবং দ্বিতীয় কলাম
m[1, 2] # আউটপুট হবে 2
# মেট্রিক্সের দ্বিতীয় রো এবং প্রথম কলাম
m[2, 1] # আউটপুট হবে 4Matrices এর Subsetting:
- আপনি একটি রো বা কলাম সিলেক্ট করতে পারেন।
# দ্বিতীয় রো
m[2, ] # আউটপুট হবে 4 5 6 (দ্বিতীয় রো)
# তৃতীয় কলাম
m[, 3] # আউটপুট হবে 3 6 9 (তৃতীয় কলাম)- আপনি নির্দিষ্ট রো এবং কলাম বেছে নিতে পারেন।
# প্রথম এবং দ্বিতীয় রো, এবং দ্বিতীয় কলাম থেকে উপাদান সিলেক্ট করা
m[1:2, 2] # আউটপুট হবে 2 5সারসংক্ষেপ
- Indexing: কোডে নির্দিষ্ট উপাদান অ্যাক্সেস করার জন্য ইনডেক্স ব্যবহার করা হয়। R ১ ভিত্তিক ইনডেক্সিং ব্যবহার করে, অর্থাৎ প্রথম উপাদানটি ১ থেকে শুরু হয়।
- Subsetting: এর মাধ্যমে আপনি এক বা একাধিক উপাদান বা একটি নির্দিষ্ট রেঞ্জ থেকে ডেটা নির্বাচন করতে পারেন।
Vectors:
v[1]: প্রথম উপাদান।v[c(1, 3)]: একাধিক উপাদান।
Lists:
my_list[[1]]: প্রথম উপাদান।my_list$name: নামের মাধ্যমে উপাদান অ্যাক্সেস করা।
Matrices:
m[1, 2]: প্রথম রো এবং দ্বিতীয় কলাম।m[2, ]: দ্বিতীয় রো।
এই উপাদানগুলো ডেটা সায়েন্স, পরিসংখ্যান এবং মেশিন লার্নিংয়ের কাজগুলোতে অত্যন্ত উপকারী।
Read more